/**
 * Licensed Materials - Property of IBM
 * (c) Copyright IBM Corporation 2008. All Rights Reserved.
 * 
 * Note to U.S. Government Users Restricted Rights:
 * Use, duplication or disclosure restricted by GSA ADP Schedule
 * Contract with IBM Corp.
 *
 * $Id$
 */
package example.jazztalk.common.model;

import com.ibm.team.repository.common.model.RepositoryPackage;

import org.eclipse.emf.ecore.EAttribute;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EPackage;

/**
 * <!-- begin-user-doc -->
 * The <b>Package</b> for the model.
 * It contains accessors for the meta objects to represent
 * <ul>
 *   <li>each class,</li>
 *   <li>each feature of each class,</li>
 *   <li>each enum,</li>
 *   <li>and each data type</li>
 * </ul>
 * <!-- end-user-doc -->
 * @see example.jazztalk.common.model.JazztalkFactory
 * @model kind="package"
 *        annotation="teamPackage clientBasePackage='example' clientPackageSuffix='common.model'"
 * @generated
 */
public interface JazztalkPackage extends EPackage {
	/**
	 * The package name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNAME = "jazztalk"; //$NON-NLS-1$

	/**
	 * The package namespace URI.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_URI = "com.example.jazztalk"; //$NON-NLS-1$

	/**
	 * The package namespace name.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	String eNS_PREFIX = "jazztalk"; //$NON-NLS-1$

	/**
	 * The singleton instance of the package.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	JazztalkPackage eINSTANCE = example.jazztalk.common.model.impl.JazztalkPackageImpl
			.init();

	/**
	 * The meta object id for the '{@link example.jazztalk.common.model.impl.MessageImpl <em>Message</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see example.jazztalk.common.model.impl.MessageImpl
	 * @see example.jazztalk.common.model.impl.JazztalkPackageImpl#getMessage()
	 * @generated
	 */
	int MESSAGE = 0;

	/**
	 * The feature id for the '<em><b>State Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__STATE_ID = RepositoryPackage.SIMPLE_ITEM__STATE_ID;

	/**
	 * The feature id for the '<em><b>Item Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__ITEM_ID = RepositoryPackage.SIMPLE_ITEM__ITEM_ID;

	/**
	 * The feature id for the '<em><b>Origin</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__ORIGIN = RepositoryPackage.SIMPLE_ITEM__ORIGIN;

	/**
	 * The feature id for the '<em><b>Immutable</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__IMMUTABLE = RepositoryPackage.SIMPLE_ITEM__IMMUTABLE;

	/**
	 * The feature id for the '<em><b>Modified</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__MODIFIED = RepositoryPackage.SIMPLE_ITEM__MODIFIED;

	/**
	 * The feature id for the '<em><b>Modified By</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__MODIFIED_BY = RepositoryPackage.SIMPLE_ITEM__MODIFIED_BY;

	/**
	 * The feature id for the '<em><b>Working Copy</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__WORKING_COPY = RepositoryPackage.SIMPLE_ITEM__WORKING_COPY;

	/**
	 * The feature id for the '<em><b>String Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__STRING_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__STRING_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Int Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__INT_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__INT_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Boolean Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__BOOLEAN_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__BOOLEAN_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Timestamp Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__TIMESTAMP_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__TIMESTAMP_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Long Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__LONG_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__LONG_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Large String Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__LARGE_STRING_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__LARGE_STRING_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Medium String Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__MEDIUM_STRING_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__MEDIUM_STRING_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Big Decimal Extensions</b></em>' map.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__BIG_DECIMAL_EXTENSIONS = RepositoryPackage.SIMPLE_ITEM__BIG_DECIMAL_EXTENSIONS;

	/**
	 * The feature id for the '<em><b>Predecessor</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__PREDECESSOR = RepositoryPackage.SIMPLE_ITEM__PREDECESSOR;

	/**
	 * The feature id for the '<em><b>Text</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE__TEXT = RepositoryPackage.SIMPLE_ITEM_FEATURE_COUNT + 0;

	/**
	 * The number of structural features of the '<em>Message</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE_FEATURE_COUNT = RepositoryPackage.SIMPLE_ITEM_FEATURE_COUNT + 1;

	/**
	 * The meta object id for the '{@link example.jazztalk.common.model.impl.MessageHandleImpl <em>Message Handle</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see example.jazztalk.common.model.impl.MessageHandleImpl
	 * @see example.jazztalk.common.model.impl.JazztalkPackageImpl#getMessageHandle()
	 * @generated
	 */
	int MESSAGE_HANDLE = 1;

	/**
	 * The feature id for the '<em><b>State Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE_HANDLE__STATE_ID = RepositoryPackage.SIMPLE_ITEM_HANDLE__STATE_ID;

	/**
	 * The feature id for the '<em><b>Item Id</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE_HANDLE__ITEM_ID = RepositoryPackage.SIMPLE_ITEM_HANDLE__ITEM_ID;

	/**
	 * The feature id for the '<em><b>Origin</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE_HANDLE__ORIGIN = RepositoryPackage.SIMPLE_ITEM_HANDLE__ORIGIN;

	/**
	 * The feature id for the '<em><b>Immutable</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE_HANDLE__IMMUTABLE = RepositoryPackage.SIMPLE_ITEM_HANDLE__IMMUTABLE;

	/**
	 * The number of structural features of the '<em>Message Handle</em>' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int MESSAGE_HANDLE_FEATURE_COUNT = RepositoryPackage.SIMPLE_ITEM_HANDLE_FEATURE_COUNT + 0;

	/**
	 * Returns the meta object for class '{@link example.jazztalk.common.model.Message <em>Message</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Message</em>'.
	 * @see example.jazztalk.common.model.Message
	 * @generated
	 */
	EClass getMessage();

	/**
	 * Returns the meta object for the attribute '{@link example.jazztalk.common.model.Message#getText <em>Text</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Text</em>'.
	 * @see example.jazztalk.common.model.Message#getText()
	 * @see #getMessage()
	 * @generated
	 */
	EAttribute getMessage_Text();

	/**
	 * Returns the meta object for class '{@link example.jazztalk.common.model.MessageHandle <em>Message Handle</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for class '<em>Message Handle</em>'.
	 * @see example.jazztalk.common.model.MessageHandle
	 * @generated
	 */
	EClass getMessageHandle();

	/**
	 * Returns the factory that creates the instances of the model.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the factory that creates the instances of the model.
	 * @generated
	 */
	JazztalkFactory getJazztalkFactory();

	/**
	 * <!-- begin-user-doc -->
	 * Defines literals for the meta objects that represent
	 * <ul>
	 *   <li>each class,</li>
	 *   <li>each feature of each class,</li>
	 *   <li>each enum,</li>
	 *   <li>and each data type</li>
	 * </ul>
	 * <!-- end-user-doc -->
	 * @generated
	 */
	interface Literals {
		/**
		 * The meta object literal for the '{@link example.jazztalk.common.model.impl.MessageImpl <em>Message</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see example.jazztalk.common.model.impl.MessageImpl
		 * @see example.jazztalk.common.model.impl.JazztalkPackageImpl#getMessage()
		 * @generated
		 */
		EClass MESSAGE = eINSTANCE.getMessage();

		/**
		 * The meta object literal for the '<em><b>Text</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute MESSAGE__TEXT = eINSTANCE.getMessage_Text();

		/**
		 * The meta object literal for the '{@link example.jazztalk.common.model.impl.MessageHandleImpl <em>Message Handle</em>}' class.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @see example.jazztalk.common.model.impl.MessageHandleImpl
		 * @see example.jazztalk.common.model.impl.JazztalkPackageImpl#getMessageHandle()
		 * @generated
		 */
		EClass MESSAGE_HANDLE = eINSTANCE.getMessageHandle();

	}

} //JazztalkPackage
